$(document).ready(function() {

	$('#raDataTable').dataTable( {
		"oLanguage": {
            "oPaginate": {
                          "sFirst": "หน้าแรก",// ปุ่มกลับมาหน้าแรก
                          "sLast": "หนัาสุดท้าย",//ปุ่มไปหน้าสุดท้าย
                          "sNext": "ถัดไป", //ปุ่มหน้าถัดไป
                          "sPrevious": "ก่อนหน้า" // ปุ่ม กลับ
                        	  },
             "sLengthMenu": "แสดง _MENU_ รายการ ต่อหน้า",  
             "sZeroRecords": "ไม่พบข้อมูลที่ค้นหา", 
             "sInfo": "แสดง _START_ ถึง _END_ จากทั้งหมด _TOTAL_ รายการ",
             "sEmptyTable": "ไม่พบรายการข้อมูล",
             "sLoadingRecords": "ระบบกำลังประมวลผล กรุณารอซักครู่",
             "sProcessing": "ประมวลผลข้อมูล",
             "sInfoEmpty": "ไม่พบรายการข้อมูลที่แสดง",
             "sInfoFiltered": "(จากทั้งหมด _MAX_ รายการ)",  
             "sSearch": "ค้นหา :"
        },
		searching: true,
		"aoColumns" : [ {"sTitle": "ลำดับ", sClass: "alignCenter", "bSortable": false, sWidth: '5%'},
		                {"sTitle": "รหัสพนักงาน", sClass: "alignCenter", "bSortable": false, sWidth: '10%'},
		                {"sTitle": "ชื่อ - นามสกุล", "bSortable": false, sWidth: '20%'},
		                {"sTitle": "Persistency Bonus(Permonth)", sClass: "alignRight", "bSortable": false, sWidth: '15%'},
		                {"sTitle": "จัดการ", sClass: "alignCenter table-action", sWidth: '20%', "bSortable": false,
		                	"mRender": function ( data, type, full ) { 
		                		return "<i class='fa fa-search' title='ดูรายละเอียด' onclick=\"calAVP('"+ data +"');\"></i> ";
		                	} 
		                }
		               ],
//		"bPaginate": false,
//		"bInfo" : false,
		"sPaginationType" : "full_numbers",// แสดงตัวแบ่งหน้า
		"bLengthChange": true, // แสดงจำนวน record ที่จะแสดงในตาราง
		"iDisplayLength": 10, // กำหนดค่า default ของจำนวน record 
		"bScrollCollapse": true,
		"aLengthMenu": [
		                [10, 25, 50, 100, -1], // จำนวนที่แสดงในตาราง
		                [10, 25, 50, 100, "ทั้งหมด"] // จำนวนที่ให้เลือก
		 ],
		 "bProcessing": true,    // เขียนโค้ดโดยระบุให้ไปดึงข้อมูลจากไฟล์ getDataTable มาทำงาน โดยเอาข้อมูลที่ได้มาแสดงใน table
         "bServerSide": true,
         "sAjaxSource": "../ACM1103Srvl?process_type=getDataTable"
	} );
	
	
	$('#raDataDetailTable').dataTable( {
		"oLanguage": {
            "oPaginate": {
                          "sFirst": "หน้าแรก",// ปุ่มกลับมาหน้าแรก
                          "sLast": "หนัาสุดท้าย",//ปุ่มไปหน้าสุดท้าย
                          "sNext": "ถัดไป", //ปุ่มหน้าถัดไป
                          "sPrevious": "ก่อนหน้า" // ปุ่ม กลับ
                        	  },
             "sLengthMenu": "แสดง _MENU_ รายการ ต่อหน้า",  
             "sZeroRecords": "ไม่พบข้อมูลที่ค้นหา", 
             "sInfo": "แสดง _START_ ถึง _END_ จากทั้งหมด _TOTAL_ รายการ",
             "sEmptyTable": "ไม่พบรายการข้อมูล",
             "sLoadingRecords": "ระบบกำลังประมวลผล กรุณารอซักครู่",
             "sProcessing": "ประมวลผลข้อมูล",
             "sInfoEmpty": "ไม่พบรายการข้อมูลที่แสดง",
             "sInfoFiltered": "(จากทั้งหมด _MAX_ รายการ)",  
             "sSearch": "ค้นหา :"
        },
		searching: true,
		"aoColumns" : [ {"sTitle": "ลำดับ", sClass: "alignCenter", "bSortable": false, sWidth: '5%'},
		                {"sTitle": "CLOS_YM", sClass: "alignCenter", "bSortable": false, sWidth: '10%'},
		                {"sTitle": "PE_NO_COL", sClass: "alignCenter", "bSortable": false, sWidth: '10%'},
		                {"sTitle": "PO_NO", sClass: "alignCenter table-action", sWidth: '10%', "bSortable": false},
		                {"sTitle": "RYC", sClass: "alignRight table-action", sWidth: '20%', "bSortable": false}
		               ],
//		"bPaginate": false,
//		"bInfo" : false,
		"sPaginationType" : "full_numbers",// แสดงตัวแบ่งหน้า
		"bLengthChange": true, // แสดงจำนวน record ที่จะแสดงในตาราง
		"iDisplayLength": 10, // กำหนดค่า default ของจำนวน record 
		"bScrollCollapse": true,
		"aLengthMenu": [
		                [10, 25, 50, 100, -1], // จำนวนที่แสดงในตาราง
		                [10, 25, 50, 100, "ทั้งหมด"] // จำนวนที่ให้เลือก
		 ],
		 "bProcessing": true,    // เขียนโค้ดโดยระบุให้ไปดึงข้อมูลจากไฟล์ getDataTable มาทำงาน โดยเอาข้อมูลที่ได้มาแสดงใน table
         "bServerSide": true,
         "sAjaxSource": "../ACM1103Srvl?process_type=getDataDetailTable"
	} );
	
});

function searchData() {

	var paPeNo = $("#inputPeNo").val();
	var paYear = $("#inputYear").val();

	if (paYear == "") {
		$('#modal_content_warning').html("กรุณากรอกข้อมูลให้ครบถ้วน");
		$('#warningModal').modal();
	} else {
		setTimeout(function() { 
			$('#raDataTable').DataTable().column(0).search(paPeNo);
			$('#raDataTable').DataTable().column(1).search(paYear);
			$('#raDataTable').DataTable().draw();
		}, 1000);
	}
	
	
}

function CalCommand(data){

	var splitData = data.split("|");
	var vaPeNo = splitData[0];
	var vaName = splitData[1];
	var vaYear = $("#inputYear").val();
	
	$.ajax({
		url : "../ACM1103Srvl", 
		type : "POST",
		data : {
			peNo: vaPeNo,
			year: vaYear,
			process_type: "calFA"
		},
	//	anync:false,
		dataType:"JSON",
		success: function(data){
			
			if(data.type == 'empty'){
				$('#modal_content_detail').html("<span class='fa-stack fa-lg mr-10' style=' color:#FC0'> <i class='fa fa-exclamation-triangle fa-stack-2x'></i></span> ไม่พบข้อมูลการคำนวณเงินสนับสนุนรายเดือน");
				$('#detailCalModal').modal();
			}else if (data.type == 'aviable'){

				var message = "";
				message +="<h3  style='padding:0px; margin-top: -10px;'>"+vaName+"</h3>";
				message +="<hr>";
				message +="<table border='0'>";
				for (var i = 0; i < data.commission.length; i++) {				
						var commission = data.commission[i].split("|");
						message += "<tr><td><b>Annual Summary Commision of Policy year 2<sup>nd</sup> - 6 <sup>th</sup></b></td>" +
								"<td>&nbsp;&nbsp;<input type='text' value='"+commission[0]+"' size='15' style='text-align: right;' disabled></td>" +
								"<td>&nbsp;&nbsp;<b>STATUS</b></td>"+
								"<td>&nbsp;&nbsp;<input type='text' value='"+commission[1]+"' size='6' style='text-align: right;' disabled></td></tr>";
				}
				message += "<tr><td style = 'text-align: right;'><b>Total Annual Summary Commision of Policy year 2<sup>nd</sup> - 6 <sup>th</sup></b></td>" +
				"<td>&nbsp;&nbsp;<input type='text' value='"+data.ryp2_6+"' size='15' style='text-align: right;' disabled></td></tr>";
				
				message += "<tr><td><b>In case of Policy is Free look/Cancelled/Void(Free Look)</b></td><td>&nbsp;&nbsp;<input type='text' value='"+ data.freelook+"' size='15' style='text-align: right;' disabled>" +
						"<i class=\"fa fa-search\" onclick=\"searchDataDetail('getFreelookDetail,"+vaName+","+vaPeNo+","+vaYear+"');\"></i></td></tr>";
				message += "<tr><td colspan='2'><b>Remain persistency bonus = (Total Persistency) - (Free Look)</b></td></tr>";
				message += "<tr><td colspan='4'><b>Remain persistency bonus = </b><input type='text' value='"+data.ryp2_6+"' size='15' style='text-align: right;' disabled>" +
						" <b>-</b> <input type='text' value='"+data.freelook+"' size='15' style='text-align: right;' disabled> <b>=</b> " +
						"<input type='text' value='"+data.remain_bonus+"' size='15' style='text-align: right;' disabled></td></tr>";
				
				message += "<tr><td style = 'text-align: right;'><b>12<sup>th</sup> Persistency</b></td><td>&nbsp;&nbsp;<input type='text' value='"+ data.persistency_rate+"%' size='15' style='text-align: right;' disabled></td></tr>";
				message += "<tr><td style = 'text-align: right;'><b>Persistency Rate</b></td><td>&nbsp;&nbsp;<input type='text' value='"+ data.persistency_lange+"' size='15' style='text-align: right;' disabled></td></tr>";
				message += "<tr><td style = 'text-align: right;'><b>Bonus Rate</b></td><td>&nbsp;&nbsp;<input type='text' value='"+ data.bonus_rate+"%' size='15' style='text-align: right;' disabled></td></tr>";
				
				message += "<tr><td colspan='4'><b>Total persistency bonus = (Annual Summary Commision of Policy year 2<sup>nd</sup> - 6 <sup>th</sup>) x (Total Persistency)</b></td></tr>";
				message += "<tr><td colspan='4'><b>Total persistency bonus = </b><input type='text' value='"+data.remain_bonus+"' size='15' style='text-align: right;' disabled>" +
				" <b>x</b> <input type='text' value='"+data.bonus_rate+"%' size='15' style='text-align: right;' disabled> <b>=</b> " +
				"<input type='text' value='"+data.persistency_bonus+"' size='15' style='text-align: right;' disabled></td></tr>";
				
				message += "<tr><td colspan='4'><b>Net Persistency Bonus Per month = (Total persistency bonus) / 12</b></td></tr>";
				message += "<tr><td colspan='4'><b>Net Persistency Bonus Per month = </b><input type='text' value='"+data.net_persistency_bonus+"' size='15' style='text-align: right;' disabled></td></tr>";
				
				message +="</table>";
				
				message +="<h3>Payment Release</h3>";
				message +="<table class='table-list'>";
				
				message +="<tr>";
				message +="<th rowspan='2'><b>เดือน</b></th>";
				message +="<th colspan='2'><b>ผลงาน FYP-C ขั้นต่ำ</b> </th>";
				message +="<th colspan='2'><b>ผลงาน FYP-C ทำได้จริง</b></th>";
				message +="<th colspan='2'><b>Persistency Bonus </b></th>";
				message +="<th rowspan='2'><b>ทำผลงานย้อนหลัง<br>(Catch up)</b></th>";
				message +="</tr>";

				message +="<tr>";
				message +="<th><b>ต่อเดือน</b></th>";
				message +="<th><b>ต่อไตรมาส</b></th>";
				message +="<th><b>ต่อเดือน</b></th>";
				message +="<th><b>ต่อไตรมาส</b></th>";
				message +="<th><b>จ่าย/ไม่จ่าย</b></th>";
				message +="<th><b>จำนวนเงิน</b></th>";
				message +="</tr>";
				
				for (var i = 0; i < data.result.length; i++) {
					
					var result = data.result[i].split("|");
					if(i=="2" || i=="5" || i=="8" || i=="11"){
						message +="<tr style='border-bottom: 2px solid;'>";
					}else{
						message +="<tr>";
					}
					
					message +="<td>"+result[0]+"</td>";
					message +="<td style = 'text-align: right;'>"+result[1]+"</td>";
					message +="<td style = 'text-align: right;'>"+result[2]+"</td>";
					message +="<td style = 'text-align: right;'>"+result[3]+"</td>";
					message +="<td style = 'text-align: right;'>"+result[4]+"</td>";
					message +="<td align='center'>"+result[5]+"</td>";
					message +="<td style = 'text-align: right;'>"+result[6]+"</td>";
					message +="<td align='center'>"+result[7]+"</td>";
					message +="</tr>";
				}
				message +="</table>";

				
				
				$('#modal_content_detail').html(message);
				$('#detailCalModal').modal();
			}
			
		}
	});
}

function calAVP(data) {

	var message = "";
	var paPeNo = data;
	var paYear = $("#inputYear").val();

	if (paPeNo == "" || paYear == "") {
		$('#modal_content_warning').html("กรุณากรอกข้อมูลให้ครบถ้วน");
		$('#warningModal').modal();
	} else {
		CalCommand(data);
	}
}



function searchDataDetail(data){
	var splitData = data.split(",");

	var message = "";
	var paType = splitData[0];
	var paName = splitData[1];
	var paPeNo = splitData[2];
	var paYear = splitData[3];
	
	if(paType == "getPCDetail"){
		paName = paName + " &nbsp;(รายละเอียด PC)";
	}else{
		paName = paName + " &nbsp;(รายละเอียด FREE LOOK)";
	}
	setTimeout(function() { 
		$('#raDataDetailTable').DataTable().column(0).search(paPeNo);
		$('#raDataDetailTable').DataTable().column(1).search(paYear);
		$('#raDataDetailTable').DataTable().column(2).search(paType);
		$('#raDataDetailTable').DataTable().draw();
	}, 1000);
	
	$('#head_modal_content_detail_commission').html("<h3>"+paName+"</h3>");
	$('#detailCommission').modal();
//	alert(paType+"-"+paName+"-"+paPeNo+"-"+paYear);
}

function cancelDetail(){
	setTimeout(function() { 
		$('#raDataDetailTable').DataTable().column(0).search("");
		$('#raDataDetailTable').DataTable().column(1).search("");
		$('#raDataDetailTable').DataTable().column(2).search("");
		$('#raDataDetailTable').DataTable().draw();
	}, 1000);
}